home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Games Collection 1 / software vault.zip / software vault / CDR10 / ROOMMAZE.ZIP / ROOMMAZE.DOC < prev    next >
Text File  |  1993-10-18  |  3KB  |  57 lines

  1. ROOMMAZE.DOC
  2.  
  3.    Documentation for ROOMMAZE.EXE - a maze generator, which generates
  4. "room" style mazes, a generator which may be of interest to those working
  5. on the Rehack project, if any are still tinkering with random generators.
  6.  
  7.    Mazes, and maze-generation logic are something of a hobby of mine.  I
  8. downloaded MAZEGEN version 01.00.00 from this library out of curiousity
  9. regarding the generation routines.  I then became interested in the
  10. Rehack project itself.
  11.    I am not entirely familiar with the Rehack project, but it does look
  12. interesting, so I thought I'd try to make some contribution.  The
  13. algorithm used herein is not particularly eloquent, but it does seem to
  14. generate mazes that are stylistically similar to many dungeon-type mazes.
  15.  
  16. Instructions:
  17.    ROOMMAZE requires a VGA display, since it displays the maze as it is
  18. being created.  To run the program, simply type "roommaze" from the command
  19. line and the maze will be drawn.  The program does not include any user
  20. input functions since it is primarily intended to be a tutorial of this
  21. particular generation routine.  Once the maze has been drawn the program
  22. will pause and allow you to view the maze until a key is pressed, it then
  23. exits.
  24.  
  25.    Try running it a few times before changing any values to get a feel for
  26. how many very different mazes can be generated by a single set of numbers.
  27.  
  28. Possibly interesting modifications:
  29.    1.  Ask for user input.
  30.  
  31.    2.  Weight the distribution of room sizes, leading to more or less
  32.        corridors (corridors simply being very thin rooms).
  33.  
  34.    3.  Define one of the floor types to be solid, thereby providing dead
  35.        space within a maze (simply redefine F? as a numerically smaller
  36.        value than F1 currently - ClarifyWalls will handle the rest).
  37.  
  38.    4.  Implement a border tracing algorithm that identifies unique neighbors
  39.        and creates only the minimum number of doors required.
  40.  
  41.    5.  Convert it to C++ so that it compiles to twice the size, and runs
  42.        half as fast. (sorry, I've been editorializing haven't I? ;-)
  43.        Actually, removing the "putpixel" function from WriteMaze will
  44.        increase speed dramatically.
  45.  
  46.    My permission is given to the developers of the Rehack project to use
  47. this code in any way desired, provided that:  a) no fee is charged for it;
  48. b) if any of this code is incorporated within another program, please give
  49. me credit somewhere in the documentation.
  50.  
  51. 10/18/93
  52. David Bollinger
  53. P.O. Box 894
  54. Denair, CA 95316
  55.  
  56.  
  57.